Power delay profile based indoor outdoor detection

ABSTRACT

A detector in a mobile device receives input from a modem, determines whether the mobile device is indoor or outdoor based on the modem-supplied input, and stores in memory a binary value to indicate an indoor-outdoor state. In some embodiments, the detector extracts a feature from the modem-supplied input, and uses the extracted feature with a statistical classifier, to output an indoor-outdoor state and an associated probability of correctness of the indoor-outdoor state, in other embodiments, the detector determines whether the mobile device is indoor or outdoor based at least on the feature extracted to characterize temporal distribution of the wireless signal, by using a prior value of the state being indoor or outdoor.

CROSS-REFERENCE TO PROVISIONAL APPLICATION

This application claims the benefit of and priority to U.S. ProvisionalApplication No. 62/160,487 filed on May 12, 2015 and entitled “POWERDELAY PROFILE BASED INDOOR OUTDOOR DETECTION”, which is incorporatedherein by reference in its entirety.

BACKGROUND

This patent application relates to devices and methods for detectingwhether a device is indoor or outdoor.

Methods to detect whether a device is indoors versus outdoors haveundergone impressive improvements in recent years. However, currentapproaches have certain weaknesses: many approaches rely on a GlobalPositioning System (GPS) or Global Navigation Satellite System (GNSS)receiver or a light sensor, which may fail in certain situations. FIG.1A illustrates a mobile device 110 in which a GPS receiver 111 receivesGPS signals 121, 131 from satellites 120, 130, when mobile device 110 isoutdoors, such as a farm 101. Mobile device 110 includes an indoorversus outdoor detector 112 (also called an indoor-outdoor (IO)detector) coupled to GPS receiver 111. IO detector 112 may use a drop inconfidence or inability to obtain a fix by GPS receiver 111 as a cue toinfer that mobile device 110 is indoors, e.g. in a shopping mall 110 asshown in FIG. 1B. However, when mobile device 110 is near a window of abuilding, IO detector 112 may get a GPS fix although mobile device 110is indoors, which makes this method unreliable.

The inventors of the current patent application recognize that methods,devices, apparatuses, systems, and computer-readable storage media ofthe type described below can detect whether a user is indoor or outdoorin a more reliable manner.

SUMMARY

In several embodiments, an IO detector in a mobile device receives inputfrom a modem (also called “modem-supplied input”), determines whetherthe mobile device is indoor or outdoor based on the modem-suppliedinput, and stores in memory a binary value to indicate a state of themobile device (as being indoor or outdoor). The modem-supplied inputwhich is used by the IO detector can be different, depending on theembodiment. In certain embodiments, wherein the mobile device includes amodem of a cell phone, the modem-supplied input includes an estimate ofa power delay profile. The power delay profile may be estimated in anymanner, e.g. based on an estimation of channel energy of a cellularsignal that is received from a base station (“cell tower”), at anantenna of the mobile device.

In some embodiments, an IO detector of the type described hereinextracts a feature from the modem-supplied input, and uses the extractedfeature with a classifier (which is trained ahead of time), to outputthe binary value of indoor/outdoor state and in some embodiments aprobability of the state. In certain embodiments, the feature isextracted to characterize temporal distribution of the wireless signalreceived at the receiver, after multiple propagation delays due totravel along multiple paths in a multipath channel Examples of a featurethat may be extracted include a first moment of the power delay profile,a second central moment of the power delay profile, temporal distancebetween peaks in the power delay profile, or number of peaks within apredetermined temporal distance in the power delay profile. Depending onthe embodiment, multiple such features may be extracted and used (e.g.as a vector) with the classifier, to determine the binary value ofindoor/outdoor state of the mobile device.

In some embodiments, logic (also called “state decision logic”) in theIO detector compares an empirically-determined threshold, against aprobability estimated by use of the classifier, and when the thresholdis exceeded the classifier-supplied state is output by the statedecision logic, as the indoor/outdoor state of the mobile device. Inother embodiments, a classifier in the IO detector outputs a likelihoodof the feature being extracted when the mobile device is indoor (oroutdoor), and the likelihood is used by the state decision logic incombination with a prior value of the state, to output the binary valueof indoor/outdoor state of the mobile device. Specifically, the priorvalue of the state may be input in some embodiments to an additionalclassifier that models at least a probability of transition, from theprior value to the binary value of indoor/outdoor state. An output ofthe additional classifier may be multiplied with the likelihood, toobtain a probability of the mobile device being in the state indicatedby the binary value, and this probability is compared with theempirically-determined threshold, to select the binary value of thestate as one of indoor or outdoor which is output, and stored in memory.

Depending on the embodiment, a state decision logic as described hereinmay optionally receive one or more signals from one or more othersensors, such as GPS receiver and/or wireless receiver and/or lightsensor, and/or accelerometer and/or magnetometer and/or gyroscope. Inother embodiments, a classifier in the IO detector outputs theindoor/outdoor state of the mobile device directly (withoutprobability).

It is to be understood that several other aspects of the embodimentswill become readily apparent to those skilled in the art from thedescription herein, wherein it is shown and described in variousaspects, by way of illustration. The drawings and detailed descriptionbelow are to be regarded as illustrative in nature and not asrestrictive.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1A illustrates a mobile device of prior art that uses a GPSreceiver to determine state as being outdoor.

FIG. 1B illustrates the mobile device of FIG. 1A determining the stateas being indoor.

FIG. 2A illustrates a mobile device of several described embodimentsthat uses a modem-supplied signal to determine state as being outdoor.

FIG. 2B illustrates the mobile device of FIG. 2A determining the stateas being indoor.

FIGS. 2C and 2D illustrate in a system-level drawing, certain componentsin two embodiments respectively, of the mobile device of FIG. 2A.

FIG. 2E illustrates, in a flow chart, certain operations that areperformed by one or more processors in the mobile device of FIG. 2A.

FIG. 2F illustrates, in a high-level flow chart, operations performed byone or more processors in some illustrative embodiments.

FIGS. 3A and 3B illustrate example power delay profiles at an outdoorlocation and an indoor location respectively.

FIG. 3C illustrates examples of three features which characterizetemporal distribution of a wireless signal.

FIG. 4 illustrates, in a system-level drawing, certain components inanother embodiment of the mobile device of FIG. 2A.

FIG. 5A illustrates, in an intermediate-level drawing, certaincomponents within logic to determine indoor/outdoor 250 of FIG. 4.

FIG. 5B illustrates, in a graph, a temporal evolution function used inclassifier 520 of FIG. 5A, to correlate a prior value of the state ofthe mobile device of FIG. 2A determined in a prior iteration and acurrent value of the state which is being computed.

FIG. 6 illustrates circuitry in an example of the mobile device of FIG.2A, in certain embodiments of the present disclosure.

DETAILED DESCRIPTION

Unless expressly stated otherwise, reference numerals identical to oneanother in the attached drawings of FIGS. 2A-2F, 4, 5A-5B and 6 refer tocomponents that operate similar or identical to one another, as readilyapparent to a skilled artisan in view of the description below.

Inventors of the current patent application believe that acharacteristic of a wireless signal received by a modem in a mobiledevice can be used to determine at least partially, whether the mobiledevice is indoors or outdoors. Specifically, as illustrated in FIG. 2A,a modem 211 in a mobile device 210 may receive a cellular signaltransmitted from a single base station 201 via different paths, such aspaths 202, 203 and/or 205. Path 205 is a direct path between basestation 201 and mobile device 210, while paths 203 and 202 arrive atmobile device 210 after reflection by objects 203A and 202Arespectively. A first component of the wireless signal that is sensed inmodem 211 arrives via path 205, and its arrival time is an earliest timeof arrival (TOA), Arrival of the first component is followed by a secondcomponent arriving at modem 211 via path 203 from base station 201, andsimilarly a third component arriving via path 202. In FIG. 2A, mobiledevice 210 is outside any buildings, and therefore one or morecharacteristics of the cellular signal are different relative to FIG. 2Bwherein mobile device 210 is inside shopping mall 110. Specifically, inFIG. 2B, modem 211 receives a cellular signal from the single basestation 201 via other paths, such as paths 224, 225 and/or 223. In thissituation also, a first component of the wireless signal that is sensedin modem 211 arrives via path 224, and its arrival time is therefore anearliest time of arrival (TOA), followed by a second component arrivingvia path 225 and a third component arriving via path 223. Distances ofreflectors 223A and 225A from mobile device 210 in shopping mall 110(FIG. 2B) can be several times smaller when compared to distances ofobjects 203A and 202A from mobile device 210 in farm 101 (FIG. 2A).Accordingly, one or more characteristic(s) of a cellular signal (e.g.difference between times of arrivals of later-arriving componentsrelative to time of arrival of the first component) as sensed by modem211 in shopping mall 110 are different from the same characteristic(s)sensed by modem 211 in farm 101.

Hence, in several embodiments of mobile device 210, based on a cellularsignal's characteristics, modem 211 supplies input 239 (FIG. 2A) to IOdetector 212 which uses the modem-supplied input 239 to determinewhether mobile device 210 is indoor or outdoor. After determination, IOdetector 212 stores at a storage location, for example a specificlocation 213 in a memory in mobile device 210, a binary value toindicate an indoor/outdoor state of mobile device 210. For example, thememory location 213 may store the binary value 1 indicative of the statebeing indoor when mobile device 210 is inside any building asillustrated in FIG. 2B, and alternatively memory location 213 may storethe binary value 0 indicative of the state being outdoor when mobiledevice 210 is outside any building as illustrated in FIG. 2A. Certainembodiments optionally store in another location 214 in memory of mobiledevice 210, a probability of the just-described indoor/outdoor state,e.g. a real value within the range 0 and 1, to indicate confidence ofcorrectness.

A state of mobile device 210 being indoor is independent of anyparticular building in which mobile device 210 may be located. Toelaborate, the state of mobile device 210 is indoor, regardless ofwhether mobile device 210 is located inside one building in one part ofthe world or mobile device 210 is located inside another building inanother part of the world. Hence, there is no change in the state ofmobile device 210 being indoor, even when mobile device 210 is movedfrom one building to another building via an enclosed passage therebetween.

Modem-supplied input 239 which is used by IO detector 212 (FIG. 2A) canbe different, depending on the embodiment. In certain embodiments, modem211 in mobile device 210 includes therein, circuitry of a receiver in acell phone, and in these embodiments modem-supplied input 239 (FIG. 2A)includes an estimate of a power delay profile which is generated by thereceiver. In some embodiments, a receiver of a cellular signal in a cellphone modem 211 generates a power delay profile, and the power delayprofile is provided as modem-supplied input 239, to IO detector 212.

As illustrated in FIG. 2C, a power delay profile may be generated in amodule 237 (also called “power delay profile module”) of a channelestimator 236. Channel estimator 236 may be implemented in any normalmanner, e.g. based on a frequency-domain signal that is output by a FastFourier Transform (FFT) circuit 233 in receiver 221. FFT circuit 233(FIG. 2C) receives a synchronized digital signal that is generated by asynchronizer 232 in receiver 221. FFT circuit 233 extracts frequencydomain components from the input signal. Synchronizer 232 in turnreceives a digital signal output by an analog-to-digital (A/D) converterand Automatic Gain Control (AGC) that converts a cellular signalreceived at antenna 221A from base station 201 and controls gainthereof. Synchronizer 232 establishes a timing window, for samplingsubcarriers with correct timing. The frequency-domain signal output byFFT circuit 233 is provided to a demodulator 234 which in turn drives adecoder 235 that generates data 2380 that is output by modem 211.

Receiver 221 (FIG. 2C) may be implemented in any manner, e.g. asdescribed in US Patent Application 2009/0245333 entitled “METHODS ANDAPPARATUS FOR ADAPTING CHANNEL ESTIMATION IN A COMMUNICATION SYSTEM” byKrishnamoorthi, et al that is incorporated by reference herein in itsentirety. In addition to receiver 221, modem 211 includes a transmitter222 that is coupled to antenna 221A to transmit thereon data 2381 thatis input to modem 211.

In some embodiments, IO detector 212 (FIG. 2C) includes a featureextractor 241 that extracts one or more feature(s) 244 from themodem-supplied input 239, and supplies the extracted feature(s) 244 to aclassifier 242 in IO detector 212. The specific feature(s) 244 that maybe extracted by feature extractor 241 can be different, depending on theembodiment. In certain embodiments, the feature(s) 244 extracted byfeature extractor 241 is/are indicative of spikiness of the power delayprofile, e.g. temporal distance of peaks relative to one another in thepower delay profile, and/or number of peaks within a specific temporaldistance in the power delay profile (which number, in turn, may bedetermined by variance or standard deviation relative to local maxima).Hence, the feature which is extracted is capable of distinguishing (e.g.when the feature is further processed) multiple propagation delays dueto travel of multiple components of a wireless signal, which istransmitted by a single base station, along multiple paths in amultipath channel.

Other embodiments of feature extractor 241 (FIG. 2C) may extract, fromthe power delay profile, other feature(s) 244 such as for exampleroot-mean-square (RMS) delay spread, and/or maximum excess delay and/ormean excess delay. See FIG. 3C. The specific feature(s) 244 of powerdelay profile which is/are extracted by feature extractor 241 may beselected by a human designer of mobile device 210, based onexperimentally-determined correlations between certain values of thespecific feature(s) at outdoor locations (e.g. as illustrated in FIG.3A) as being distinctive, relative to other values of the specificfeature at indoor locations (as illustrated in FIG. 3B).

For example, assume that a single feature is used in classifier 242, andin this case when feature extractor 241 determines an RMS delay spreadof 1 microsecond or greater, classifier 242 may determine that mobiledevice 210 is outdoor. In the just-described example, when featureextractor 241 determines the RMS delay spread is less than 1microsecond, classifier 242 may determine that mobile device 210 isindoor. In some embodiments, feature extractor 241 is designed toextract multiple features to form a feature vector, and classifier 242is trained (in a block 276 shown in FIG. 2E) to use each of the multiplefeatures, to classify a binary state of mobile device 210 being outdooror indoor. In one such example, a first feature and a second feature areextracted. The first feature characterizes a temporal distribution ofthe wireless signal received at the receiver 221 of the mobile device210, where the first feature is capable of distinguishing multiplepropagation delays due to travel of the wireless signal along multiplepaths in a multipath channel. The second feature can be extracted fromthe power delay profile of the wireless signal. The classifier can useboth the first and second features when determining whether the mobiledevice is indoor or outdoor. In another such example, a feature vectorincludes the three features described in the first sentence of theprevious paragraph above, and classifier 242 is designed to classifymobile device 210 as being indoor when RMS delay spread is less than 1microsecond, and maximum excess delay is less than 1 microsecond, andmean excess delay is less than 1 microsecond. When any one of thejust-described three conditions is not met, classifier 242 may bedesigned to classify mobile device 210 as being outdoor.

In first illustrative embodiments, feature extractor 241 (FIG. 2C)extracts as a feature 244, a first moment μ of the power delay profile(also called “mean delay spread”) as follows:

$\mu = {\frac{\sum\limits_{k}{{P( \tau_{k} )}\tau_{k}}}{\sum\limits_{k}{P( \tau_{k} )}}{( {{where}\mspace{14mu}{P( \tau_{k} )}\mspace{14mu}{is}\mspace{14mu}{power}\mspace{14mu}{at}\mspace{14mu}{delay}\mspace{14mu}\tau_{k}} ).}}$More specifically, in some embodiments, P(τ) is the power at delay τ(also called excess delay) relative to an earliest time of arrival (TOA)of a component of the wireless signal as received at receiver 221 incell phone modem 211.In second illustrative embodiments, feature extractor 241 (FIG. 2C)extracts as a feature 244, a second central moment of the power delayprofile as follows:

$\sigma = \sqrt{\frac{\sum\limits_{k}{{P( \tau_{k} )}\tau_{k}^{2}}}{\sum\limits_{k}{P( \tau_{k} )}} - ( \frac{\sum\limits_{k}{{P( \tau_{k} )}\tau_{k}}}{\sum\limits_{k}{P( \tau_{k} )}} )^{2}}$In other illustrative embodiments, two or more of the above-describedfeatures 244 (FIG. 2C) are used in combination with one another, e.g. inthe form of a feature vector, as will be readily apparent in view ofthis detailed description. Still other embodiments, when extracting afeature 244 in feature extractor 241, may use any one or more of: numberof power peaks, and/or autocorrelation, and/or FFT transform. The FFTtransform may be used to identify an item in the frequency domain thatrepresents a repeatedly occurring characteristic in the time domain, forextraction as feature 244. In some embodiments, detection of power peaksmay use any algorithm available in the art, as will be readily apparentto a skilled artisan in view of this detailed description. Someembodiments may use autocorrelation, which is computed on a vector usingthe following formula, for example, as in conventional signal analysis.Autocorrelation of P(τ).R(l)=Σ_(i=1) ^(N-l)(P(i)−P)·(P(i+l)− P )Where P is the mean of the vector P(τ) which has length N.

$\overset{\_}{P} = {\frac{1}{N}{\sum\limits_{\tau = 1}^{N}{P(\tau)}}}$The input to the classifier is the vector R of length N made up with thevalues R(l) computed for 1≦l≦N.FFT transform of P(τ).

${Q(f)} = {\sum\limits_{\tau = 1}^{N}{{P(\tau)} \cdot e^{{- 2}i\;\pi\frac{f\;\tau}{N}}}}$The input to the classifier is the vector Q of length N made up of thevalues Q(f) computed for 1≦f≦N.

Classifier 242 (FIG. 2C) in IO detector 212 uses the feature(s) 244 thatis/are supplied by feature extractor 241 to generate a state, anddepending on the embodiment optionally a probability of correctness ofthe state. In embodiments of the type illustrated in FIG. 2D, whichgenerate only state without generation of probability (also called“state-only embodiments”), classifier 242 may be implemented in variousways, e.g. using a decision tree and/or random forest, and a binaryvalue of state output thereof may be stored in memory location 213 inmemory 290. In embodiments of the type illustrated in FIG. 2C, whichgenerate probability in addition to state (also called “probabilisticembodiments”), two outputs of classifier 242 are stored in memorylocations 216 and 214, and input to logic 243 (also called “statedecision logic”) which in turn writes the binary value of state tomemory location 213. Probabilistic embodiments of classifier 242 (FIG.2C) may be implemented differently in different embodiments, to includeone or more of: Gaussian mixture models, Bayesian inference, Bayesiannetworks, Neural networks, Linear Regression, Support Vector Machines.

In probabilistic embodiments, training data 264 (e.g. a sequence oflabels “Indoor, Indoor, . . . Outdoor” depending on a state of mobiledevice 210 being indoor or outdoor) received from user interface 256(via operating system 262) is used to train classifier 242, 245 (seeFIGS. 2C and 2D) ahead of time in block 276 (FIG. 2E), which isperformed prior to normal operation of mobile device 210 in method 270(described below). More specifically, during training in block 276, auser provides data 264 via user interface 256 to identify the binaryvalue of outdoors when mobile device 210 is located outdoors. And, theuser provides data 264 via user interface 256 to identify an inverse ofthe just-described binary value, to indicate indoors when mobile device210 is located indoors. The just-described user-provided data is inputas training data, to the classifier of block 273 (described below, inreference to FIG. 2E).

A user's identification of the state of mobile device 210 duringtraining block 276 is done independent of whether mobile device 210 iswithin a line of sight (LOS) or not within line of sight (NLOS) to basestation 201. For example, when device 210 happens to be inside abuilding, even when located adjacent to a window of the building andpresent within a line of sight (LOS) to base station 201, user muststill provide data 264 to indicate the state of mobile device 210 as“Indoor”. Hence, user's identification of the state of mobile device 210as being “Indoor” or “Outdoor” during training block 276 depends onwhether mobile device 210 is at an indoor location enclosed in abuilding, or at an outdoor location which is outside of any building.Accordingly, depending on the feature(s) being used (which distinguishmultiple propagation delays), classifier 245 may be trained during block276 to distinguish between indoor locations at which receipt of powerdecreases relatively quickly (e.g. in less than 1 microsecond) and/orhas numerous peaks temporally close to one another caused by reflectorslocated relatively nearby, versus outdoor locations at which receipt ofpower decreases relatively slowly (e.g. in greater than 1 microsecond)and/or has few peaks temporally far from one another due to reflectorslocated relatively far away.

In probabilistic embodiments, state decision logic 243 (FIG. 2C) in IOdetector 212 compares an empirically-determined threshold, againstprobability in memory location 214 that is output by classifier 242, andwhen the threshold is exceeded an intermediate state stored in memorylocation 216 is output by IO detector 212, at memory location 213 as thestate of mobile device 210 being indoor or outdoor. Thus, classifier 242and state decision logic 243 (FIG. 2C) or classifier 245 (FIG. 2D) maybe included in a logic to determine indoor/outdoor 250 in IO detector212. Depending on the embodiment, logic to determine indoor/outdoor 250may be implemented in hardware, or alternatively in software executingin one or more processor(s) 406 (see FIG. 2D), or any combinationthereof. Similarly, depending on the embodiment, feature extractor 241may be implemented in hardware, or alternatively in software executingin one or more processor(s) 406 (see FIG. 2D), or any combinationthereof.

Also depending on the embodiment, state decision logic 243 (FIG. 2C) mayoptionally receive one or more signals from one or more other sensors,such as GPS receiver 255 and/or any other sensor 251 which may be, forexample a light sensor, and/or accelerometer and/or magnetometer and/orgyroscope. Instead of, or in addition to sensor(s) 251 and/or 255, IOdetector 212 of the type shown in FIG. 2C may receive a signal from awireless receiver, which may be included e.g. in a WiFi adapter (notshown).

In some embodiments, the state output by IO detector 212 in memorylocation 213 is supplied to a geofence circuit 280 (see FIGS. 2C and2D). Geofence circuit 280 in turn makes the state in memory location 213available, via an operating system 262, to one or more applications,such as a power control application 261. Power control application 261in turn may use the state to turn off certain sensors and/or turn onother sensors. For example, power control application 261 may turn offGPS receiver 255 when the state has a binary value that is indicative ofindoors. Additionally, or alternatively, power control application 261may turn on a wireless receiver (not shown) in mobile device 210, whenthe state has the binary value indicative of indoors. Moreover,operating system 262 may display on a home screen of mobile device 210,a first set of apps when the state has the binary value indicative ofindoors, and a second set of apps when the state has the binary valueindicative of outdoors.

Certain embodiments of an application in mobile device 210 use the statein memory location 213 to turn on/off various sensors, e.g. as describedin US Patent Publication 2014/0179298 by Grokop et al. entitled “LowPower Always-On Determination of Indoor versus Outdoor State” which isincorporated by reference herein in its entirety.

In several embodiments, after training of classifier 242, 245 in block276, mobile device 210 is configured to perform method 270 whichincludes blocks 271-275 as illustrated in FIG. 2E. Specifically, inblock 271 (FIG. 2E), mobile device 210 obtains a power delay profile301, 302 or 303 (see FIGS. 3A-3C) from modem supplied input 239generated by a modem receiver of a cell phone, such as receiver 221(FIGS. 2C, 2D). Subsequently, in block 272 (FIG. 2E), mobile device 210extracts one or more features 244 from the power delay profile, e.g. infeature extractor 241 (FIGS. 2C, 2D). The one or more features extractedcan include a feature to characterize temporal distribution of thewireless signal received at the receiver. The one or more features canbe capable of distinguishing multiple propagation delays due to travelalong multiple paths in a multipath channel. The temporal distributioncan be related to whether a mobile device 210 is indoor (see profile 302in FIG. 3B) or outdoor (see profile 301 in FIG. 3A), and the featurescan characterize the distribution, as will be discussed further below.Thereafter, in block 273 (FIG. 2E), mobile device 210 determines abinary state indicative of whether a user is indoors or outdoors andestimates probability for the determination, using a classifier (e.g.classifier 242 of FIG. 2C), which may be a statistical multivariateclassifier. Subsequently, in an block 274, mobile device 210 checks if apredetermined threshold is exceeded by the probability estimated inblock 273, e.g. in logic 243 (FIG. 2C). When the answer in block 274 isno, mobile device 210 returns to block 273 (described above). When theanswer in block 274 is yes, mobile device 210 goes to block 275. Inblock 275, outputs the binary state indicative of the user's location,which was determined in block 273.

Alternative embodiments use as modem-supplied inputs of the IO detector,other characteristics of one or more wireless signal(s) received by amodem in a mobile device that change over time during receipt of thesignal(s). Received signal strength indicator (RSSI) does not changewhen the mobile device is stationary, and thus RSSI is not used bycertain embodiments of feature extractor 241 to extract feature(s) 244.Similarly, signals from number of wireless access points detected in awireless local area network (LAN) adapter also do not change when themobile device is stationary, and hence this number is also not used bysome embodiments of feature extractor 241 to extract feature(s) 244. So,alternative embodiments may extract from one or more modem-suppliedinputs of the IO detector, one or more alternative feature(s) thatcharacterize temporal distribution of any wireless signal as thatwireless signal changes during its receipt, and use the alternativefeature(s) in the manner similar or identical to the description herein,to determine a binary value of a state of the mobile device being indooror outdoor.

Depending on the embodiment, the feature being extracted may beindicative of an impulse response of a wireless signal transmitted bybase station 201, as received at receiver 221 in mobile device 210.Specifically, the impulse response at receiver 221 characterizestemporal distribution of an impulse transmitted by base station 201.Such an impulse response depends on characteristics of the multipathchannel (e.g. location of reflectors in paths), but is independent ofdata 2380 (see FIGS. 2C, 2D) carried by the wireless signal. Thus, afeature which is extracted by feature extractor 241 of some embodimentsis indicative of whether an outdoor multipath channel is being used inwhich case reflectors located outdoors are several times farther away(e.g. FIG. 2A) relative to reflectors in an indoor multipath channelused when mobile device 210 is located indoors (e.g. FIG. 2B), and hencethe temporal distribution of the wireless signal received at thereceiver differs if the mobile device is located indoors (see profile302 in FIG. 3B) versus outdoors (see profile 301 in FIG. 3A).

In several embodiments, mobile device 210 is configured to performmethod 285 which includes blocks 281-284 as illustrated in FIG. 2F.Specifically, in block 281 (FIG. 2F), mobile device 210 obtains a powerdelay profile of a wireless signal, such as one of profiles 301, 302 or303 (see FIGS. 3A-3C), from modem supplied input 239 generated by areceiver for a wireless signal in a cell phone, such as receiver 221(FIGS. 2C, 2D). In some such embodiments, a processor 406 (FIG. 6) inmobile device 210 is coupled to receiver 221 by circuitry (e.g.conductive wires and/or latching gates or flip-flops) to receivemodem-supplied input 239 (as illustrated in FIG. 2C), and thejust-described circuitry implements block 281 of FIG. 2F, in oneexample, as a means for obtaining.

Subsequently, in block 282 (FIG. 2F), mobile device 210 extracts afeature 244 from the power delay profile, e.g. in feature extractor 241(FIGS. 2C, 2D). In certain such embodiments, the feature characterizestemporal distribution of the wireless signal received at the receiver221. The receiver is capable of detecting multiple propagation delaysdue to travel of multiple components of the wireless signal alongmultiple paths in a multipath channel. The temporal distribution isdifferent depending on between whether a mobile device 210 is indoor(see profile 302 in FIG. 3B) or outdoor (see profile 301 in FIG. 3A),and the feature can characterize the distribution. In some suchembodiments, a processor 406 (FIG. 6) in mobile device 210 is programmedwith software (e.g. feature extractor 241 shown in FIG. 2C) to implementblock 282 of FIG. 2F, in one example, as a means for extracting.

Thereafter, in block 283 (FIG. 2F), mobile device 210 determines whethera mobile device of the user is indoor or outdoor using a classifier(e.g. classifier 242 of FIG. 2C), based at least on the featureextracted to characterize the temporal distribution of the wirelesssignal. In some such embodiments, a processor 406 (FIG. 6) in mobiledevice 210 is programmed with software (e.g. logic to determineindoor/outdoor 250 shown in FIG. 2C) to implement block 283 of FIG. 2F,in one example, as a means for determining.

In some embodiments of block 283, in addition to the above-describedfeature (hereinafter first feature), block 283 may include an optionalblock 283A which uses an additional feature (hereinafter second feature)which is extracted from the power delay profile. In such embodiments,optional block 283A uses the second feature in the classifier inaddition to the first feature. Accordingly, a processor 406 (FIG. 6) inmobile device 210 is programmed with software (e.g. in state decisionlogic 253 shown in FIG. 4) to implement block 283A of FIG. 2F, in oneexample, as the means for extracting a second feature.

After block 283, in block 284, mobile device 210 stores in memory (e.g.memory 290) a binary value of the state of the location of the mobiledevice, as being indoor or outdoor (e.g. in location 213), which wasdetermined in block 283. In some such embodiments, a processor 406 (FIG.6) in mobile device 210 is programmed with software (e.g. in statedecision logic 253 shown in FIG. 4) to implement block 284 of FIG. 2F,in one example, as a means for storing.

In some embodiments, a logic to determine indoor/outdoor 250 in IOdetector 212 (FIG. 4) uses a prior value of the state being indoor oroutdoor, to determine a binary value of state stored in memory location213 in memory 290. More specifically, IO detector 212 of suchembodiments determines the state being indoor or outdoor periodically,i.e. iterates over a delay period 530 (FIG. 5A), e.g. once everymillisecond. At the beginning of each iteration, a binary value atmemory location 213 is copied to another memory location 217 (as shownby arrow 218 in FIG. 4), for use in the current iteration as a priorvalue of the state of being indoor or outdoor. Such embodiments mayimplement an additional classifier (additional classifier notspecifically illustrated) to correlate the prior value of the state inmemory location 217 and a current value of the state to be determinedand stored in location 213. Classifier 520 may model a temporalevolution (e.g. by use of a transition matrix T) such that the longerthe delay period 530, the weaker the correlation between the prior andcurrent values of the state, e.g. as illustrated in FIG. 5B for threedifferent values of a parameter θ.

In several such embodiments, logic to determine indoor/outdoor 250includes a classifier 252 that stores in memory locations 219 (FIG. 4),two likelihood(s) of feature 244 being generated when mobile device 210is in two corresponding values of the state being indoor or outdoor. Attime t, probability of feature f_(t) being generated when mobile device210 is indoor is denoted as likelihood l_(t). Logic to determineindoor/outdoor 250 (FIG. 5A) includes state decision logic 253 thatmultiplies at least one of the two likelihoods in memory locations 219with a value obtained by weighting a prior value of the state in memorylocation 217 with a probability of transitioning from the prior value(e.g. indoor) to an inverse of the prior value (e.g. outdoor)p_(indoor→outdoor). The probability of transitioning from a prior valueto an inverse of the prior value may be modeled as a function of time(e.g. depending on whether the user is seated and stationary, or whetherthe user is walking and in motion) in an additional classifier(described elsewhere) included in state decision logic 253.

In the embodiment of FIG. 5A, classifier 252 is configured to model avector 244 (FIG. 4) of k features f_(t) that are collected by featureextractor 241 from power delay profile 239 (FIG. 4) at time t. As mobiledevice 210 can be in one of two states x_(i)={indoor, outdoor}, theoutput of classifier 252 is a vector of likelihoods l_(t) for eachpossible state x_(i), whereinl _(t)=[L(f _(t)|indoor),L(f _(t)|outdoor)].

In the just-described equation, likelihood functions L are functionslearned from previous data that define the probability distribution ofthe input features f when mobile device 210 is in a certain state,namely one of {indoor, outdoor}. Hence, l_(t) is a vector ofprobabilities that the k input features f_(t) collected at time t, aregenerated if mobile device 210 is in each possible state. For example,L(f_(t)|indoor) is the probability that the features have values f_(t)when mobile device 210 is indoor.

Examples of likelihood functions which may be used in classifier 252 toprovide an estimation of probability of being indoor/outdoor includeGaussian mixture models, Bayesian inference, Bayesian networks, Neuralnetworks, Linear Regression, Support Vector Machines. One example of aGaussian mixture model for probability p of each possible state x_(i),which is used in classifier 252 is as follows:

${p( {f❘x_{i}} )} = {\sum\limits_{j = 1}^{M}{\varphi_{i,j}{N( {\mu_{i,j},\Sigma_{i,j}} )}}}$where:

-   -   x_(i) with i={1,2} are the 2 states {indoor, outdoor}    -   M are the number of Gaussian components (learned from data)    -   N(μ, Σ) are the Gaussian components:

${N( {\mu,\Sigma} )} = {\frac{1}{\sqrt{( {2\pi} )^{k}{\sum }}}e^{({{- \frac{1}{2}}{({f - \mu})}^{T}{\Sigma^{- 1}{({f - \mu})}}})}}$

-   -   φ_(i,j), μ_(i,j), Σ_(i,j) are respectively the weight, the        vector of mean and the covariance matrix for each Gaussian        component i for each state j (learned from data)

In some embodiments, state decision logic 253 includes an additionalclassifier 520 (FIG. 5A) that models probabilities of transitioning fromindoor to outdoor and vice versa, by use of transition matrix that Tdefines the probability of changes from each of the two binary values ofthe state of being indoor or outdoor. The additional classifier 520(also called second classifier) receives as input the probabilityp_(t-1) stored in memory as the output of previous iteration at timet−1, and generates product T·p_(t-1). The just-described product ismultiplied in state decision logic 253 with likelihood vector l_(t) ofthe current iteration output by classifier 252 (also called firstclassifier), to obtain the current iteration's probability p_(t) foreach state x_(i) which is then compared with a threshold by comparator540 which determines a binary value of the state of mobile device 210 asone of {indoor, outdoor}. Hence, in this manner, some embodiments ofblock 283 (FIG. 2F) of determining obtains a probability p_(t) of astate indicated by one of values {indoor, outdoor}.represented as abinary value, by multiplying likelihood l_(t) from classifier 252 withthe output of additional classifier 520, namely T·p_(t-1).

In such embodiments, transition matrix T may be learned from data intraining in block 276 (FIG. 2E), via statistical analysis. Oneillustrative example of transition matrix T uses a Markov process asfollows. The state of mobile device 210 at time t depends only from astate of mobile device 210 at time t−1 in the previous iteration, asfollows

$T = \begin{bmatrix}{1 - p_{{indoor}arrow{outdoor}}} & p_{{indoor}arrow{outdoor}} \\p_{{outdoor}arrow{indoor}} & {1 - p_{{outdoor}arrow{indoor}}}\end{bmatrix}$where p_(indoor→outdoor) is the probability of mobile device 210transitioning from the state of value indoor to the state of valueoutdoor, and where p_(outdoor→indoor) is the probability of mobiledevice 210 transitioning from the state of value outdoor to the state ofvalue indoor. Such probabilities and hence matrix T can depend on thedifference in time between interactions, for instancep_(indoor→outdoor)=0.5·(1−e^(−θΔt)) Where θ is a parameter that modelshow fast the probabilities of environment change increase with time.FIG. 5B shows temporal evolution of matrix T for three values of θnamely 0.5, 0.1 and 0.05, and one specific value among these three maybe selected for use in an embodiment, with the specific value beingidentified during training block 276, based on user-provided data.

FIG. 6 provides a schematic illustration of one embodiment of mobiledevice 210 that can perform the methods provided by various embodiments,as described herein. FIG. 6 is meant only to provide a generalizedillustration of certain components of mobile device 210, any and/or allof which may be utilized in certain embodiments as appropriate. FIG. 6therefore, broadly illustrates how individual system elements may beimplemented in a relatively separated or relatively more integratedmanner in mobile device 210.

Mobile device 210 includes hardware elements that can be electricallycoupled via a bus (or may otherwise be in communication, asappropriate). The hardware elements of mobile device 210 may include oneor more processors 406 configured to perform one or more acts and/orblocks and/or operations described above, and may further includewithout limitation one or more general-purpose processors and/or one ormore special-purpose processors (such as digital signal processingchips). Mobile device 210 may further include a classifier 242 (e.g. inthe form of a neural network), GPS receiver 255, and geofence circuitry280.

Mobile device 210 may include one or more input devices, such astouch-sensitive screen 401 and/or a microphone, and/or a speaker, akeyboard and/or the like. Mobile device 210 may also include a camera404, and white balance setting therein which may be set by anapplication that uses a value of indoor/outdoor state in memory location213 (FIG. 2C) e.g., via operating system 262. It should be understoodthat mobile device 210 may be any portable electronic device such as acellular or other wireless communication device, personal communicationsystem (PCS) device, personal navigation device (PND), PersonalInformation Manager (PIM), Personal Digital Assistant (PDA), laptop,camera, smartphone, or other suitable mobile platform that is capable ofproviding a user interface.

Mobile device 210 may include (and/or be in communication with) one ormore non-transitory storage devices 408, which can comprise, withoutlimitation, local and/or network accessible storage, and/or can include,without limitation, a disk drive, a drive array, an optical storagedevice, a solid-state storage device such as a random access memory(“RAM”). Mobile device 210 may include read-only memory (“ROM”) 407,which can be programmable, flash-updateable and/or the like. Suchstorage devices may be configured to implement any appropriate datastorage, including without limitation, various file systems, databasestructures, and/or the like.

Mobile device 210 may also include a communications interface 409 (e.g.including modem 211 therein) and/or wireless transceiver 410, which caninclude without limitation a modem, a network card (wireless or wired),an infrared communication device, a wireless communication device and/orchipset (such as an 802.11 device, a WiFi device, a WiMax device,cellular communication facilities, etc.), and/or the like. Thecommunications interface 409 and/or wireless transceiver 410 may permitdata to be exchanged with a network (such as the network describedbelow, to name one example), other computer systems, and/or any otherdevices described herein.

Communication interfaces 409 may interface to various wirelesscommunication networks such as a wireless wide area network (WWAN), awireless local area network (WLAN), a wireless personal area network(WPAN), and so on. The term “network” and “system” are often usedinterchangeably. A WWAN may be a Code Division Multiple Access (CDMA)network, a Time Division Multiple Access (TDMA) network, a FrequencyDivision Multiple Access (FDMA) network, an Orthogonal FrequencyDivision Multiple Access (OFDMA) network, a Single-Carrier FrequencyDivision Multiple Access (SC-FDMA) network, and so on. A CDMA networkmay implement one or more radio access technologies (RATs) such ascdma2000, Wideband-CDMA (W-CDMA), and so on. Cdma2000 includes IS-95,IS-2000, and IS-856 standards. A TDMA network may implement GlobalSystem for Mobile Communications (GSM), Digital Advanced Mobile PhoneSystem (D-AMPS), or some other radio access technology (RAT). GSM andW-CDMA are described in documents from a consortium named “3rdGeneration Partnership Project” (3GPP). Cdma2000 is described indocuments from a consortium named “3rd Generation Partnership Project 2”(3GPP2). 3GPP and 3GPP2 documents are publicly available. A WLAN may bean Institute of Electrical and Electronics Engineers (IEEE) 802.11xnetwork, and a WPAN may be a Bluetooth network, an IEEE 802.15x, or someother type of network. The techniques may also be used for anycombination of WWAN, WLAN and/or WPAN.

The described embodiments may be implemented by wireless transceiver 410in conjunction with Wi-Fi/WLAN or other wireless networks. In additionto Wi-Fi/WLAN signals, a wireless/mobile device 210 may receive via areceiver therein (e.g. GPS receiver 255), signals from satellites, whichmay be from a GPS, Galileo, Global Navigation Satellite System(GLONASS), Navigation Satellite Timing and Ranging System (NAVSTAR),QZSS, a system that uses satellites from a combination of these systems,or any satellite positioning system developed in the future, eachreferred to generally herein as a Satellite Positioning System (SPS) orGlobal Navigation Satellite System (GNSS). An SPS typically includes asystem of transmitters positioned to enable entities to determine theirlocation on or above the Earth based, at least in part, on signalsreceived from the transmitters. Such a transmitter typically transmits asignal marked with a repeating pseudo-random noise (PN) code of a setnumber of chips and may be located on ground based control stations,user equipment and/or space vehicles. In a particular example, suchtransmitters may be located on Earth orbiting satellite vehicles (SVs).For example, a SV in a constellation of Global Navigation SatelliteSystem (GNSS) such as GPS, Galileo, Glonass or Compass may transmit asignal marked with a PN code that is distinguishable from PN codestransmitted by other SVs in the constellation (e.g., using different PNcodes for each satellite as in GPS or using the same code on differentfrequencies as in Glonass).

In many embodiments, mobile device 210 may include a non-transitoryworking memory 290, which can include a random-access memory (RAM) orread-only (ROM) device, as described above. One or more of the storagedevices and/or memory 290 of mobile device 210 may comprise software, toperform acts and/or blocks and/or operations of method 270 shown in FIG.2E, including an operating system, device drivers, executable libraries,and/or other code, such as one or more application programs, which maycomprise computer programs provided by various embodiments, and/or maybe designed to implement methods, and/or configure systems, provided byother embodiments, as described herein. Merely by way of example, one ormore procedures described with respect to the method(s) discussed above,for example as described with respect to FIG. 2E, might be implementedas code and/or instructions executable by mobile device 210 (and/or oneor more processor(s) 406 therein); in an aspect, then, such code and/orinstructions can be used to configure and/or adapt a general purposecomputer (or other device) to perform one or more operations inaccordance with the described methods.

A set of these instructions and/or code to perform method 270 (FIG. 2E)might be stored on a computer-readable storage medium, such as thestorage device(s) 408 described above. In some cases, the storage mediummight be incorporated within a computer system, such as mobile device210. In other embodiments, the storage medium might be separate frommobile device 210 (e.g., a removable medium, such as a compact disc),and/or provided in an installation package, such that the storage mediumcan be used to program, configure and/or adapt a general purposecomputer with the instructions/code stored thereon. These instructionsmight take the form of executable code, which is executable by mobiledevice 210 and/or might take the form of source and/or installable code,which, upon compilation and/or installation on mobile device 210 (e.g.,using any of a variety of generally available compilers, installationprograms, compression/decompression utilities, etc.) takes the form ofexecutable code.

Substantial variations may be made in accordance with specificrequirements. For example, customized hardware might also be used inmobile device 210, and/or particular elements might be implemented inhardware, software (including portable software, such as applets, etc.),or both to perform any of blocks 271-275 illustrated in FIG. 2E. Thus,some embodiments may employ mobile device 210 to perform method 270(FIG. 2E) in accordance with the disclosure.

For example, some or all of the procedures of the described methods maybe performed by mobile device 210 in response to processor(s) 406executing one or more sequences of one or more instructions (which mightbe incorporated into an operating system and/or other code, such as anapplication program) contained in memory 290. Such instructions may beread into the working memory 290 from another computer-readable medium,such as one or more of the storage device(s) 408.

If implemented in firmware and/or software, instructions to performmethod 270 may be stored as on one or more non-transitorycomputer-readable storage media. Examples include non-transitorycomputer-readable storage media encoded with a data structure andnon-transitory computer-readable storage media encoded with a computerprogram. Non-transitory computer-readable storage media may take theform of an article of manufacture. Non-transitory computer-readablestorage media includes any physical computer storage media that can beaccessed by a computer. By way of example, and not limitation, suchnon-transitory computer-readable storage media can comprise SRAM, ROM,EEPROM, CD-ROM or other optical disk storage, magnetic disk storage orother magnetic storage devices, or any other non-transitory medium thatcan be used to store desired program code in the form of instructions ordata structures and that can be accessed by a computer; disk and disc,as used herein, includes compact disc (CD), laser disc, optical disc,digital versatile disc (DVD), floppy disk and Blu-ray disc where disksusually reproduce data magnetically, while discs reproduce dataoptically with lasers. Combinations of the above should also be includedwithin the scope of computer-readable media.

Various forms of computer-readable storage media may be involved incarrying one or more sequences of one or more instructions to theprocessor(s) 406 for execution. Merely by way of example, theinstructions may initially be carried on a magnetic disk and/or opticaldisc of a remote computer. A remote computer might load the instructionsinto its dynamic memory and send the instructions as signals over atransmission medium to be received and/or executed by mobile device 210.These signals, which might be in the form of electromagnetic signals,acoustic signals, optical signals and/or the like, are all examples ofcarrier waves on which instructions can be encoded, in accordance withvarious embodiments.

Communications interfaces 409 and/or wireless transceiver 410 mayreceive signals, and the bus then might carry the signals (and/or thedata, instructions, etc. carried by the signals) to the working memory290, from which the processor(s) 406 retrieves and executes theinstructions. The instructions received by the memory 290 may optionallybe stored on a non-transitory storage device 408 either before or afterexecution by the processor(s) 406. Memory 290 may contain at least onedatabase according to any of the databases and methods described herein.Memory 290 may thus store any of the values discussed in any of thepresent disclosures, including an intermediate indoor/outdoor state inmemory location 216 and/or probability in memory location 214 and/orindoor/outdoor state in memory location 213 (see FIG. 2C).

The methods, systems, and devices discussed above are examples. Variousembodiments may omit, substitute, or add various procedures orcomponents as appropriate. For instance, in alternative configurations,the methods described may be performed in an order different from thatdescribed, and/or various stages may be added, omitted, and/or combined.Also, features described with respect to certain embodiments may becombined in various other embodiments. Different aspects and elements ofthe embodiments may be combined in a similar manner. Also, technologyevolves and, thus, many of the elements are examples that do not limitthe scope of the disclosure to those specific examples.

Specific details are given in the description to provide a thoroughunderstanding of the embodiments. However, embodiments may be practicedwithout these specific details. For example, well-known circuits,processes, algorithms, structures, and techniques have been shownwithout unnecessary detail in order to avoid obscuring the embodiments.This description provides example embodiments only, and is not intendedto limit the scope, applicability, or configuration of other suchembodiments. Rather, the preceding description of the embodiments willprovide those skilled in the art with an enabling description forimplementing illustrative embodiments. Various changes may be made inthe function and arrangement of elements without departing from thespirit and scope of embodiments in this description.

Also, some embodiments were described as processes depicted as flowdiagrams or block diagrams. Although each may describe the operations asa sequential process, many of the operations can be performed inparallel or concurrently. In addition, the order of the operations maybe rearranged. A process may have additional steps not included in thefigure. Furthermore, embodiments of the methods may be implemented byhardware, software, firmware, middleware, microcode, hardwaredescription languages, or any combination thereof. When implemented insoftware, firmware, middleware, or microcode, the program code or codesegments to perform the associated tasks may be stored in acomputer-readable medium such as a storage medium. Processors mayperform the associated tasks.

Having described several embodiments, various modifications, alternativeconstructions, and equivalents may be used without departing from thespirit of the disclosure. For example, the above elements may merely bea component of a larger system, wherein other rules may take precedenceover or otherwise modify embodiments described herein. Also, a number ofsteps may be undertaken before, during, or after the above elements areconsidered. Accordingly, the above description does not limit the scopeof the disclosure.

Various examples have been described. These and other examples arewithin the scope of the following claims.

The invention claimed is:
 1. A method of determining an indoor-outdoorstate of a mobile device indicative of whether the mobile device isindoors or outdoors, the method comprising: obtaining a power delayprofile of a wireless signal from a modem, the modem comprising areceiver for the wireless signal; extracting, from the power delayprofile, a feature to characterize temporal distribution of the wirelesssignal received at the receiver, the feature being capable ofdistinguishing multiple propagation delays due to travel along multiplepaths in a multipath channel; determining, using a statisticalclassifier, the indoor-outdoor state of the mobile device, and anassociated probability of correctness of the indoor-outdoor state of themobile device, based at least on the feature extracted to characterizetemporal distribution of the wireless signal; and storing in memory abinary value to indicate the indoor-outdoor state of the mobile deviceand storing in the memory the associated probability of correctness ofthe indoor-outdoor state of the mobile device.
 2. The method of claim 1wherein the feature extracted to characterize temporal distribution ofthe wireless signal is at least one of: (a) mean delay spread of thepower delay profile, computed as$\mu = \frac{\sum\limits_{k}{{P( \tau_{k} )}\tau_{k}}}{\sum\limits_{k}{P( \tau_{k} )}}$with P(τ) being the power at delay τ relative to an earliest time ofarrival of a component of the wireless signal, at the receiver; or (b)root mean square of delay spread of the power delay profile computed as$\sigma = \sqrt{\frac{\sum\limits_{k}{{P( \tau_{k} )}\tau_{k}^{2}}}{\sum\limits_{k}{P( \tau_{k} )}} - ( \frac{\sum\limits_{k}{{P( \tau_{k} )}\tau_{k}}}{\sum\limits_{k}{P( \tau_{k} )}} )^{2}}$with P(τ) being the power at delay τ relative to an earliest time ofarrival of a component of the wireless signal, at the receiver.
 3. Themethod of claim 1 wherein the feature extracted to characterize temporaldistribution of the wireless signal comprises at least a predeterminednumber of peaks within a predetermined temporal distance.
 4. The methodof claim 1 wherein the feature extracted to characterize temporaldistribution of the wireless signal is hereinafter a first feature, andwherein the method further comprises: extracting a second feature fromthe power delay profile; wherein the second feature is used in thestatistical classifier in addition to the first feature, during thedetermining; and wherein the wireless signal is a cellular signaltransmitted by a single base station.
 5. The method of claim 1 wherein:the determining comprises comparing the associated probability with athreshold.
 6. A method of determining a state of a mobile device, themethod comprising: obtaining a power delay profile of a wireless signalfrom a modem, the modem comprising a receiver for the wireless signal:extracting, from the power delay profile, a feature to characterizetemporal distribution of the wireless signal received at the receiver,the feature being capable of distinguishing multiple propagation delaysdue to travel along multiple paths in a multipath channel; determiningwhether the mobile device is indoor or outdoor based at least on thefeature extracted to characterize temporal distribution of the wirelesssignal; and storing in memory, a binary value to indicate the state ofthe mobile device as being indoor or outdoor, based on the determining;wherein the determining uses a prior value of the state being indoor oroutdoor.
 7. The method of claim 6 wherein: the prior value of the stateis input to as classifier; and the classifier models at least aprobability of transition, from the prior value of the state to aninverse of the prior value.
 8. The method of claim 1 wherein: thestatistical classifier outputs two likelihoods of the feature beinggenerated when the mobile device is in two corresponding values of theindoor-outdoor state; the determining comprises multiplying at least oneof the two likelihoods with an output of an additional classifier; andthe additional classifier models at least an additional probability oftransition, from a prior value of the indoor-outdoor state to an inverseof the prior value.
 9. The method of claim 6 wherein the featureextracted to characterize temporal distribution of the wireless signalcomprises at least a predetermined number of peaks within apredetermined temporal distance.
 10. The method of claim 6 furthercomprising: prior to normal operation, using training data to train aclassifier; wherein after the training, the classifier is used in thedetermining.
 11. An apparatus comprising: an antenna; a modem coupled tothe antenna, the modem comprising a receiver for a wireless signalreceived at the antenna, the receiver comprising a channel estimator,the channel estimator comprising a power delay profile module; anindoor-outdoor detector comprising a feature extractor, the featureextractor being coupled to the power delay profile module in the channelestimator in the receiver in the modem; wherein the indoor-outdoordetector fluffier comprises circuitry to determine, using a statisticalclassifier, an indoor-outdoor state of the apparatus, and an associatedprobability of correctness of the indoor-outdoor state of the apparatus,the circuitry being coupled to the feature extractor to receivetherefrom a feature extracted to Characterize temporal distribution ofpower of the wireless signal received at the receiver, the feature beingcapable of distinguishing multiple propagation delays due to travelalong multiple paths in a multipath channel; a memory coupled to theindoor-outdoor detector, the memory comprising a first storage locationto the indoor-outdoor state of the apparatus and a second storagelocation to store the associated probability of correctness of theindoor-outdoor state of the apparatus; wherein the circuitry comprises aprocessor coupled to the memory.
 12. The apparatus of claim 11 whereinthe feature extracted to characterize temporal distribution of power ofthe wireless signal comprises at least a predetermined number of peakswithin a predetermined temporal distance.
 13. The apparatus of claim 11wherein the feature extracted to characterize temporal distribution ofpower of the wireless signal is hereinafter a first feature, andwherein: the circuitry is coupled to the feature extractor to receivetherefrom at least a second feature of the power delay profile; thesecond feature is used in the statistical classifier in addition to thefirst feature; and the wireless signal is a cellular signal transmittedby a single base station.
 14. An apparatus comprising: an antenna; amodem coupled to the antenna, the modern comprising a receiver for awireless signal received at the antenna, the receiver comprising achannel estimator, the channel estimator comprising a power delayprofile module; an indoor-outdoor detector comprising a featureextractor, the feature extractor being coupled to the power delayprofile module in the channel estimator in the receiver in the modem;wherein the indoor-outdoor detector further comprises circuitry todetermine whether the apparatus is indoor or outdoor, the circuitrybeing coupled to the feature extractor to receive therefrom a featureextracted to characterize temporal distribution of power of the wirelesssignal received at the receiver, the feature being capable ofdistinguishing multiple propagation delays due to travel along multiplepaths in a multipath channel; a memory coupled to the indoor-outdoordetector, the memory comprising a storage location to store a state ofthe apparatus as being one of indoor or outdoor; wherein the state isoutput by the circuitry, and the circuitry comprises a processor coupledto the memory; wherein the circuitry is coupled to memory to receivetherefrom a prior value of the state being indoor or outdoor.
 15. Theapparatus of claim 14 wherein the feature extracted to characterizetemporal distribution of the wireless signal comprises at least apredetermined number of peaks within a predetermined temporal distance.16. The apparatus of claim 14 further comprising: a classifier trainedusing training data; wherein after the training, the classifier is usedin the determining.
 17. A mobile device comprising: means for obtaininga power delay profile of a wireless signal from a modem, the modemcomprising a receiver for the wireless signal; means for extracting,from the power delay profile, a feature to characterize temporaldistribution of power of the wireless signal received at the receiver,the feature being capable of distinguishing multiple propagation delaysdue to travel along multiple paths in a multipath channel; means fordetermining, using a statistical classifier, an indoor-outdoor state ofthe mobile device, and an associated probability of correctness of theindoor-outdoor state of the mobile device, based at least on the featureextracted to characterize temporal distribution of the wireless signal;means for storing in memory, a binary value to indicate theindoor-outdoor state of the mobile device, and the associatedprobability of correctness of the indoor-outdoor state of the mobiledevice.
 18. The mobile device of claim 17 wherein the feature extractedto characterize temporal distribution of the wireless signal comprisesat least a predetermined number of peaks within a predetermined temporaldistance.
 19. The mobile device of claim 17 wherein the featureextracted to characterize temporal distribution of the wireless signalis hereinafter a first feature, and wherein the mobile device furthercomprises: means for extracting a second feature from the power delayprofile; wherein the second feature is used in the statisticalclassifier in addition to the first feature, by the means fixdetermining; and wherein the wireless signal is a cellular signaltransmitted by a single base station.
 20. A mobile device comprising:means for obtaining a power delay profile of a wireless signal from amodem, the modem comprising a receiver for the wireless signal; meansfor extracting, from the power delay profile, a feature to characterizetemporal distribution of power of the wireless signal received, at thereceiver, the feature being capable of distinguishing multiplepropagation delays due to travel along multiple paths in a multipathchannel; means for determining whether the mobile device is indoor oroutdoor based at least on the feature extracted to characterize temporaldistribution of the wireless signal; and means for storing in memory, abinary value to indicate the state of the mobile device as being one ofindoor or outdoor, wherein the binary value is output by the means fordetermining; wherein the means for determining uses a prior value of thestate being indoor or outdoor.
 21. One or more non-transitorycomputer-readable storage media comprising instructions, which, whenexecuted by a machine, cause one or more processors therein to: obtain apower delay profile of a wireless signal from a modem, the modemcomprising a receiver for the wireless signal; extract, from the powerdelay profile, a feature that characterizes temporal distribution of thewireless signal received at the receiver capable of distinguishingmultiple propagation delays due to travel along multiple paths in amultipath channel; determine, using a statistical classifier, anindoor-outdoor state of a mobile device, and an associated probabilityof correctness of the indoor-outdoor state of the mobile device, basedat least on the feature extracted to characterize temporal distributionof the wireless signal; and store in memory, a binary value to indicatethe indoor-outdoor state of the mobile device, and the associatedprobability of correctness of the indoor-outdoor state of the mobiledevice, based on execution of the instructions to determine.
 22. The oneor more non-transitory computer-readable storage media of claim 21wherein: the statistical classifier outputs two likelihoods of thefeature being generated when the mobile device is in two correspondingvalues of the indoor-outdoor state; and the determining comprisesmultiplying at least one of the two likelihoods with an output of anadditional classifier; and the additional classifier models at leastRain an additional probability of transition, from a prior value of theindoor-outdoor state to an inverse of the prior value.
 23. One or morenon-transitory computer-readable storage media comprising instructions,which, when executed by a machine, cause one or more processors thereinto: obtain a power delay profile of a wireless signal from a modem, themodem comprising a receiver for the wireless signal; extract, from thepower delay profile, a feature that characterizes temporal distributionof the wireless signal received at the receiver capable ofdistinguishing multiple propagation delays due to travel along multiplepaths in a multipath channel; determine whether a mobile device isindoor or outdoor based at least on the feature extracted tocharacterize temporal distribution of the wireless signal; and store inmemory, a binary value to indicate a state of the mobile device as beingone of indoor or outdoor, based on execution of the instructions todetermine; wherein the instructions to de ermine use a prior value ofthe state being indoor or outdoor.
 24. The one or more non-transitorycomputer-readable storage media claim 23 wherein: the prior value of thestate is input to a classifier; and the classifier models at least aprobability of transition, from the prior value of the state to thebinary value stored in memory.
 25. The one or more non-transitorycomputer-readable storage media of claim 23 wherein the featureextracted to characterize temporal distribution of the wireless signalcomprises at least a predetermined number of peaks within apredetermined temporal distance.
 26. The one or more non-transitorycomputer-readable storage media of claim 23 further comprisinginstructions, which, when executed by the machine, cause the one or moreprocessors therein to: train a classifier using training data; whereinafter the training, the classifier is used in the instructions todetermine.